home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d8 / sfc30b.arc / SFC.DOC < prev    next >
Text File  |  1991-01-12  |  46KB  |  1,209 lines

  1.  
  2.  
  3.                      Serial File Copy
  4.  
  5.  
  6.  
  7.                           Version 3.0
  8.  
  9.  
  10.  
  11.                     Copyright (C) 1989 & 1990
  12.                          By MarshallSoft
  13.                      All rights are reserved.
  14.  
  15.  
  16.  
  17.  
  18.                           MarshallSoft
  19.                           PO Box 4543
  20.                       Huntsville, AL. 35815
  21.                           (205) 881-4630
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.                                                                page 1
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.                         TABLE OF CONTENTS
  70.  
  71.  
  72.  
  73.       Chapter                                 Page
  74.       -------                                 ----
  75.  
  76.         1.0  Introduction........................  3
  77.         2.0  Summary of SFC Features.............  3
  78.         3.0  Distribution Files..................  4
  79.         4.0  Null Modem Cables...................  5
  80.              4.1 Purchasing a Null Modem Cable...  5
  81.              4.2 Building a Null Modem Cable.....  5
  82.         5.0  Serial COM Ports....................  7
  83.         6.0  Running SFC.........................  8
  84.              6.1  Startup Menu...................  8
  85.              6.2  Startup Problems...............  9
  86.              6.3  Status Window.................. 10
  87.              6.4  Command Menu................... 11
  88.              6.5  Terminating SFC................ 11
  89.              6.6  CRC Calculations............... 12
  90.         7.0  Support Programs.................... 13
  91.              7.1  CLONE, GETSFC, and PUTSFC...... 13
  92.              7.2  LOOPBACK....................... 13
  93.              7.3  TERM........................... 13
  94.              7.4  MODEM.......................... 13
  95.              7.5  PORTEXAM....................... 13
  96.              7.6  CHECKCRC....................... 14
  97.              7.7  CRYPT.......................... 14
  98.              7.8  SPACE.......................... 14
  99.              7.9  SETCOM3 and SETCOM4............ 14
  100.              7.10 FLAGS.......................... 14
  101.         8.0  Performance......................... 15
  102.              8.1  Test 1......................... 15
  103.              8.2  Test 2......................... 15
  104.              8.3  Test 3......................... 15
  105.              8.4  Other Tests.................... 15
  106.         9.0  Using SFC to back up HARD DISKS..... 16
  107.        10.0  User Registration................... 17
  108.        11.0  Other MarshallSoft Products......... 17
  109.        12.0  Revision History.................... 18
  110.        13.0  Warranty............................ 19
  111.        14.0  Final Comments...................... 19
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.                                                                page 2
  129.  
  130.  
  131.  
  132.  
  133.        1.0 Introduction
  134.  
  135.        The Serial File Copy program SFC is designed to allow the transfer
  136.        of disk files ( including entire directories which may  themselves
  137.        contain  directories ) between any two IBM PC compatible computers
  138.        using standard RS232 serial ports. The SFC program is particularly
  139.        useful in copying files between  IBM  PC  compatibles  with  5.25"
  140.        disks  and  those  with  3.5"  disks  such as the IBM PS/2 and the
  141.        various IBM PC compatible laptops. The computers must both be  IBM
  142.        PC compatible ( this includes the TANDY 1000 ) with 256 KB or more
  143.        of  RAM.   SFC  is also an easy way to backup a hard disk onto the
  144.        hard disk of another computer.
  145.  
  146.        Both computers ( between which you want to transfer files  )  must
  147.        have  RS232  serial  ports  configured for use with a modem. COM1,
  148.        COM2, COM3 or COM4 may be used. Baud rate  of  1200,  2400,  4800,
  149.        9600,  19200,  or  38400  may be selected. Baud rates of 57600 and
  150.        115200 are available in the registered version.
  151.  
  152.        There are only two differences between the shareware  version  and
  153.        the  registered  version of the SFC program. The first is that the
  154.        registered version can run at baud rates of 57600 and 115200 baud.
  155.        The second is that  the  registered  version  does  not  have  the
  156.        opening shareware screen.
  157.  
  158.        2.0 Summary of SFC Features
  159.  
  160.            o Supports COM1, COM2, COM3 and COM4.
  161.            o Supports baud rates from 1200 to 115200.
  162.            o Select groups of files with DOS wildcards ( eg: *.DOC )
  163.            o Select entire directories ( recursively ).
  164.            o Complete disk & transfer status on screen.
  165.            o On line help provided for all SFC commands.
  166.            o Option to send only files with a later timestamp.
  167.            o Option to send only files with ARCHIVE attribute set.
  168.            o Option to send files with READ ONLY attribute set.
  169.            o Load DOS Shell from within SFC.
  170.            o Full 16 bit CRC checksum is used.
  171.            o Bad file packets are automatically retransmitted.
  172.            o Change logged drive and path from within SFC.
  173.            o Display directories from within SFC.
  174.            o File date & time preserved after copying.
  175.            o Supports batch file lists ( lists of files to send ).
  176.            o Option to send or skip any file from selected group.
  177.            o Can print files on remote computer.
  178.            o Choice of B&W or color displays.
  179.            o Can save choices in configuration file.
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.                                                                page 3
  195.  
  196.  
  197.  
  198.  
  199.        3.0 Distribution Files
  200.  
  201.        If  a  previous  version  of  SFC is used to copy the distribution
  202.        files be sure to rename the older version  (  eg:  rename  sfc.exe
  203.        sfc_old.exe ) so that there is no attempt to run the older version
  204.        with  the  newer version. The following files should be on the SFC
  205.        distribution disk:
  206.  
  207.         SFC.EXE  --  The executable Serial File Copy ( SFC ) program.
  208.         SFC.DOC  --  This documentation file.
  209.         SFC.HLP  --  File required for on-line help ( Type F1 for help ).
  210.         SFC.QRC  --  Quick reference card.
  211.         SFC.CFG  --  SFC configuration file.
  212.         SFC.INV  --  Invoice ready to print (shareware only).
  213.         SFCSW.EXE -  Displays shareware screen for SFC (shareware only).
  214.  
  215.        Registered users are also  provided  with  the  following  support
  216.        programs. None are necessary in order to run SFC, but are provided
  217.        as  a  "Thank  You"  for  registering.  For a description of these
  218.        programs see the section on "Support Programs".
  219.  
  220.        CLONE.COM    -- 'Clones' SFC on the target computer.
  221.        CLONE.DOC    -- CLONE documentation file.
  222.        GETSFC.COM   -- Created by CLONE on the target computer.
  223.        PUTSFC.COM   -- Sends SFC to GETSFC on the target computer.
  224.        LOOPBACK.COM -- Performs loopback testing on specified port.
  225.        TERM.COM     -- Simple communications program.
  226.        MODEM.EXE    -- Controls and displays modem control status.
  227.        PORTEXAM.EXE -- Displays all information about specified port.
  228.        CHECKCRC.EXE -- Computes the CRC for any file.
  229.        CRYPT.EXE    -- Encrypts and decrypts any file.
  230.        SPACE.COM    -- Displays free disk space and allocation units.
  231.        SETCOM3.COM  -- Installs COM3 address ( 3E8 ) in BIOS table.
  232.        SETCOM4.COM  -- Installs COM4 address ( 2E8 ) in BIOS table.
  233.        FLAGS.EXE    -- Examine, sets, or clears file attributes.
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.                                                                page 4
  261.  
  262.  
  263.  
  264.  
  265.        4.0  Null Modem Cables
  266.  
  267.        A   'null   modem   cable'   is necessary to connect two computers
  268.        together using the RS232 modem ports. They are widely available or
  269.        can be home built for less than $10.
  270.  
  271.        4.1  Purchasing a Null Modem Cable
  272.  
  273.        A null modem cable can be  purchased  ready  for  use  or  can  be
  274.        assembled  by  connecting a 'null modem adapter' to a normal RS232
  275.        modem cable. Null modem adapters and cables can be purchased  from
  276.        several  sources  such  as  Radio Shack and most electronics parts
  277.        houses. "Computer Shopper" regularly  carries  advertisements  for
  278.        null modem adapters and cables. Be advised that not all null modem
  279.        adapters  and  cables connect all the lines that may be necessary.
  280.        Although all should work for SFC some may not work for  the  MSDOS
  281.        CTTY command which is used by the CLONE program.
  282.  
  283.        4.2 Building a Null Modem Cable
  284.  
  285.        Building the null modem cable is easy. The  only  tricky  part  is
  286.        being  absolutely  positive  that  you have identified the correct
  287.        pins. Refer to the diagrams below as necessary. The pin  numbering
  288.        is  shown for the front of each connector, where the pins ( male )
  289.        or holes ( female ) are located. When viewed from the back side  (
  290.        where  the  wires  are  soldered  )  the pins and holes run in the
  291.        opposite direction. Soldering is recommended, although  solderless
  292.        connectors  which use crimp pins can be used instead. You can also
  293.        solder each wire to a crimp pin as its much easier than  soldering
  294.        the wire directly onto the connector.
  295.  
  296.  
  297.                          Male DB 25                       Male DB 9
  298.          *****************************************    *****************
  299.        *  1  2  3  4  5  6  7  8  9 10 11 12 13  *  *  1  2  3  4  5  *
  300.         *  14 15 16 17 18 19 20 21 22 23 24 25  *    *   6  7  8  9  *
  301.          ***************************************      ***************
  302.  
  303.  
  304.                         Female DB 25                     Female DB 9
  305.         *****************************************    *****************
  306.        * 13 12 11 10  9  8  7  6  5  4  3  2  1  *  *  5  4  3  2  1  *
  307.         *   25 24 23 22 21 20 19 18 17 16 15 14 *    *   9  8  7  6  *
  308.          ***************************************      ***************
  309.  
  310.         DB 25   DB 9    Pin Definition
  311.         =====   ====    ==============
  312.           7       5      Signal Ground ( SG )
  313.           2       3      Transmit Data ( TX )
  314.           3       2      Receive Data ( RX )
  315.          20       4      Data Terminal Ready ( DTR )
  316.           6       6      Data Set Ready ( DSR )
  317.           4       7      Request to Send ( RTS )
  318.           5       8      Clear to Send ( CTS )
  319.           8       1      Carrier Detect ( CD )
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.                                                                page 5
  327.  
  328.  
  329.  
  330.  
  331.        SFC  itself  requires  only signal ground (SG), transmit (TX), and
  332.        receive (RX) lines in order to  operate.  The  first  step  is  to
  333.        determine  the  type  of  connectors  required.  Examine the RS232
  334.        connectors on your computers. You will need to purchase connectors
  335.        that mate with the computers connectors.  For  example,  lets  say
  336.        that  you  have  a laptop with a male DB 9 connector and a desktop
  337.        with a female DB 25 connector. Then you need a female DB 9  and  a
  338.        male DB 25 connector for your cable. IBM ATs and laptops require a
  339.        female  DB 9 to mate while most XT class machines require a female
  340.        DB 25 to mate.
  341.  
  342.        The  DB  25  and  DB  9  connectors  can  be  purchased  at   most
  343.        electronics  parts  houses.  Radio  Shack  also stocks both solder
  344.        type and solderless DB connectors.
  345.  
  346.        Next you will need about 6 feet of  ordinary  4-wire  solid  phone
  347.        cable,  although  any  3-wire  cable  of  24  to  20  gauge can be
  348.        substituted. If the CLONE program is to be used then 5  wires  are
  349.        required.  Up  to  50 feet of cable can be used. Shielded cable is
  350.        even better but not necessary. Cable can be purchased by the  foot
  351.        at most stores that sell it.
  352.  
  353.        Once the connectors and cable have been purchased you are ready to
  354.        assemble  your null modem cable. First connect the signal ground (
  355.        SG ) line straight between connectors. Then connect Transmit  Data
  356.        (  TX ) from one connector to Receive Data ( RX ) on the other. If
  357.        you wish to use the  SFC  cloning  program  CLONE  you  must  also
  358.        connect  Data Terminal Ready ( DTR ) from the end connected to the
  359.        computer running CLONE to Data Set Ready ( DSR ) on the other end.
  360.        Some computers ( like my TANDY 3000 ) also require you to  connect
  361.        Request  To  Send  (  RTS ) from the end connected to the computer
  362.        running CLONE to Clear To Send ( CTS ) on the other end.
  363.  
  364.        You then should have either 3 ( or 5 in order to use CLONE ) lines
  365.        connected between connectors. Once completed, test the TX  and  RX
  366.        connections  by  running the TERM ( or any terminal emulator )
  367.        program on both sides. Whatever is typed on one side is  displayed
  368.        on  the  other. Finally, test the remaining connections by cloning
  369.        SFC from one computer to the other.
  370.  
  371.        Refer to the Pin Definition Table above in order to  identify  the
  372.        correct  pins  for your connector. When viewing the connector side
  373.        of both the DB 9 and DB 25 with the wide  part  at  the  top,  the
  374.        pins  are  numbered  left to right, top to bottom. Most connectors
  375.        have the pin  numbers  on  the  connector  itself  but  are  often
  376.        difficult to read because they are very small.
  377.  
  378.        If   you  have  never  soldered  before,  you  should  use  either
  379.        solderless connectors ( you crimp the wires on ) or find a  friend
  380.        who   has  some  experience  soldering.  Remember  that  soldering
  381.        doesn't have to be pretty in order  to  work.  Practice  a  little
  382.        first  with  some  spare wire if you are out of practice. When you
  383.        have completed construction of your null modem cable, verify  that
  384.        the  correct  pins  have  been connected. If you cannot get SFC to
  385.        operate, then most likely you made a mistake in constructing  your
  386.        cable.
  387.  
  388.  
  389.  
  390.  
  391.  
  392.                                                                page 6
  393.  
  394.  
  395.  
  396.  
  397.        5.0 Serial COM Ports
  398.  
  399.        IBM PC compatible computers can have up to  four  or  more  serial
  400.        ports.  The BIOS table located at paragraph 40 has room  for  four
  401.        communication  port  addresses : COM1 to COM4. During boot up, the
  402.        COM1  and COM2 addresses are placed  in  the  BIOS table providing
  403.        that the hardware is present. Unfortunately,  the  COM3  and  COM4
  404.        addresses  are  not  placed in the table. This can be corrected by
  405.        using   DEBUG   to  assemble  the  following program SETCOM3 which
  406.        should be added to the AUTOEXEC.BAT  file.   When  executed,  this
  407.        program  will  place  the  standard  COM3 port address 03E8 in the
  408.        BIOS table. For COM4, change 03E8 to 02E8 and [0004] to [0006].
  409.  
  410.  
  411.  
  412.                    PUSH DS
  413.                    MOV AX,0040
  414.                    MOV DS,AX
  415.                    MOV AX,03E8
  416.                    MOV [0004],AX
  417.                    POP DS
  418.                    MOV AX,4C00
  419.                    INT 21
  420.  
  421.        If  you  have  never  used DEBUG, refer to your MSDOS  manual  for
  422.        detailed  instructions.  SETCOM3  and  SETCOM4  are  provided  for
  423.        registered users.
  424.  
  425.  
  426.  
  427.  
  428.  
  429.  
  430.  
  431.  
  432.  
  433.  
  434.  
  435.  
  436.  
  437.  
  438.  
  439.  
  440.  
  441.  
  442.  
  443.  
  444.  
  445.  
  446.  
  447.  
  448.  
  449.  
  450.  
  451.  
  452.  
  453.  
  454.  
  455.  
  456.  
  457.  
  458.                                                                page 7
  459.  
  460.  
  461.  
  462.  
  463.        6.0 Running SFC
  464.  
  465.        Connect  your  PC  compatible computers together with a null modem
  466.        cable between the RS232 ports ( the port used to talk to  a  modem
  467.        ).  Be  sure  that  you are using a proper null modem cable rather
  468.        than a standard cable.
  469.  
  470.        Normally,  SFC can be started on both computers by typing 'SFC' on
  471.        each.  This is referred  to  as  the  AUTOSYNC  startup.  On  some
  472.        computers,  AUTOSYNC  will not work well. In this case, choose one
  473.        computer to be the MASTER and the other the  SLAVE.  It  makes  no
  474.        difference  which is which. Start SFC on the MASTER by typing "SFC
  475.        M" followed by the ENTER key. Start SFC on  the  SLAVE  by  typing
  476.        "SFC  S"  followed  by  the ENTER key. If AUTOSYNC is specified on
  477.        one side, it must also be specified on the other.
  478.  
  479.        6.1 Startup Menu
  480.  
  481.        After startup, a menu will be  displayed  at  the  bottom  of  the
  482.        screen with 8 options. Use up and down arrow keys to move the menu
  483.        bar  --  use  ENTER  to  make selection. Note that on-line help is
  484.        available by typing function key 1 ( F1 ).
  485.  
  486.        CONNECT: Attempts to connect to the other computer. The baud  rate
  487.        must be the same on both computers.
  488.  
  489.        SET  BAUD: Allows the user to select the baud rate. 57600 baud and
  490.        115200 baud are available only in  the  registered  version.  Note
  491.        that some 4.77 MHZ PC compatibles won't run at 115200 baud.
  492.  
  493.        SET  COM  PORT: Allows the user to select the communications port,
  494.        COM1  to COM4.  SFC uses the port addresses in the BIOS table.  If
  495.        you have hardware installed for COM3  or  COM4  you  may  need  to
  496.        install  the  port  addresses  in this table. See section 5.0.  Of
  497.        course, hardware must exist for the port selected.
  498.  
  499.        SET LPT PORT: Allows the user to select the printer port, LPT1  to
  500.        LPT3 for printing by the remote system.
  501.  
  502.        B&W or COLOR: The toggles between black and white and  color  mode.
  503.        Use  "Save  Config."  (  see  below  ). When SFC is restarted, the
  504.        selected mode will be in effect.
  505.  
  506.        TOGGLE FLAGS: Allows the user to toggle each of the  five  runtime
  507.        options  (  ARC,  ASK, CHK, DIR, and R/O ). The current setting is
  508.        always displayed in the status area.   For  a  definition  of  the
  509.        runtime options, see section 6.3.
  510.  
  511.        SAVE CONFIG: After selected the baud rate, COM port, LPT port, and
  512.        B&W or color, use this selection to save  the  configuration.  The
  513.        next time that SFC is run, it will be initialized as configured.
  514.  
  515.        QUIT: Quits and returns to MSDOS.
  516.  
  517.        Set  the  port and/or baud rate on both computers if the default (
  518.        COM1 at 38400  in  shareware  version  and  115200  in  registered
  519.        version  )  is not acceptable. Then select the CONNECT option. SFC
  520.        will now attempt connection to the other  computer.
  521.  
  522.  
  523.  
  524.                                                                page 8
  525.  
  526.  
  527.  
  528.  
  529.        6.2 Startup Problems
  530.  
  531.        If  the  message  "Connection completed" is not displayed then the
  532.        computers are not talking to each other. The problem  may  be  one
  533.        of the following:
  534.  
  535.        (1)  You  must  start SFC on both computers! SFC should be started
  536.        on both computers within one minute of each other.
  537.  
  538.        (2) The wrong port is selected. For example, if  SFC  is  told  to
  539.        use COM1 but COM2 is actually connected to the cable.
  540.  
  541.        (3)  You may have selected different baud rates. They must match !
  542.        The default baud rate is  38400  for  the  shareware  version  and
  543.        115200 for the registered version.
  544.  
  545.        (4)  You  do  not  have  a  null modem cable connecting the two. A
  546.        normal cable ( without a null modem adapter ) will not work.  Test
  547.        the null modem cable by running TERM or any terminal emulation
  548.        program.  Whatever is typed on one side is displayed on the other.
  549.        If this does not happen then you have a  problem  with  your  null
  550.        modem cable.
  551.  
  552.        (5)  One  of  the computers may be configured as DCE ( in order to
  553.        talk to a serial printer ) instead of DTE ( in order to talk to  a
  554.        modem  ).  In  this case, a normal cable ( instead of a null modem
  555.        cable ) will work.
  556.  
  557.        (6) Your serial port is defective. This  is  unlikely.  Registered
  558.        users can run LOOPBACK to test the port.
  559.  
  560.        (7) Your PC is not  IBM  hardware  compatible!  For  example,  the
  561.        TANDY  2000  is not hardware compatible with respect to the serial
  562.        ports.
  563.  
  564.        Occasionally, SFC will run correctly for a while and then lock up.
  565.        This is almost always due to a marginal homemade null modem cable.
  566.        If you use SFC on a regular basis, then you should either  buy  or
  567.        make  a  SHIELDED  cable.
  568.  
  569.        If SFC will not connect, then use the manual mode on COM1 at  9600
  570.        baud:  Type  "SFC  M" on one computer and "SFC S" on the other. If
  571.        you still cannot get communication between  computers,  registered
  572.        users  can  call  the  technical  support  telephone  number (205)
  573.        881-4630 after 5:00 PM CST Monday through Friday or Saturday after
  574.        2:00 PM CST for assistance.
  575.  
  576.  
  577.  
  578.  
  579.  
  580.  
  581.  
  582.  
  583.  
  584.  
  585.  
  586.  
  587.  
  588.  
  589.  
  590.                                                                page 9
  591.  
  592.  
  593.  
  594.  
  595.        6.3 Status Window
  596.  
  597.        The "Status" window contains information having  to  do  with  the
  598.        status of SFC. The definition of each field follows:
  599.  
  600.        PORT: The Communications port ( COM1 to COM4 ) is displayed.
  601.  
  602.        BAUD: The baud rate ( 1200 to 115200 ) is displayed.
  603.  
  604.        UNIT:  #  bytes  per  allocation unit is displayed. Space for disk
  605.        files is always allocated as a multiple of this value.
  606.  
  607.        DISK: The currently logged disk drive is displayed.
  608.  
  609.        PATH: The current directory path is displayed.
  610.  
  611.        MODE: Runtime mode is displayed.
  612.  
  613.        "ready"   -- Displayed when ready to accept keyboard input.
  614.        "MENU"    -- Displayed after having selected a menu command.
  615.        "send"    -- Displayed while sending files.
  616.        "receive" -- Displayed while receiving files.
  617.  
  618.        FREE: Free disk space in bytes is displayed.
  619.  
  620.        Five runtime options  (  ARC,  ASK,  CHK,  DIR,  R/O  )  are  also
  621.        displayed  as  either  "On"  or "Off".  All options can be toggled
  622.        between "On" and "Off" by use of the "Toggle Flags"  selection  of
  623.        the command menu ( See section 6.4 ). All flags are normally off.
  624.  
  625.        ASK:  Asks  the  user  for  permission  before  sending each file.
  626.        Typically selected when using wildcards in specifying a  range  of
  627.        files for which you wish to exclude some files.
  628.  
  629.        DIR:  Enables  sending of files in subdirectories ( recursively ).
  630.        For example, to send all "*.ASM" files on the C drive, select  the
  631.        C  drive  and  the  root path, turn on the DIR flag, and then send
  632.        "*.ASM" with "Send File(s)".
  633.  
  634.        CHK: Send only files with a later date  &  time  if  file  already
  635.        exists.   Normally  off, toggle this on if you want to do a backup
  636.        of more recently modified files. "...skipped(CHK)" is displayed if
  637.        the file is not copied because of the CHK option.
  638.  
  639.        ARC: Send only files where the ARCHIVE attribute is set, then turn
  640.        off the ARCHIVE attribute.  An ARCHIVE attribute is maintained  by
  641.        MSDOS  for  each  file on your disk.  It is automatically set each
  642.        time the file is written to and closed. Please refer to your MSDOS
  643.        manual.
  644.  
  645.        R/O: Allows the sending of read only (R/O) files. Many users  mark
  646.        their  executable  programs  as  read  only using the MSDOS ATTRIB
  647.        program.  Since one normally doesn't need to back up  applications
  648.        and  systems  programs,  the R/O flag provides a convenient method
  649.        for excluding read only files from copies.
  650.  
  651.        Notes: (1) All options need only be set on the  sending  computer.
  652.        (2)  Be  sure that the clocks on your two computers are set to the
  653.        same date and time ( to within a few seconds  )  if  you  plan  on
  654.        using the CHK option.
  655.  
  656.                                                                page 10
  657.  
  658.  
  659.  
  660.  
  661.        6.4 Command Menu
  662.  
  663.        The Command Menu contains the choices the user has  once  SFC  has
  664.        connected. Use the up and down arrow keys to move the menu bar and
  665.        ENTER  to  make  your  selection.  Once  one  of  the  choices  is
  666.        selected, the user can return without SFC performing the  selected
  667.        function by typing the ESC key. Type the F1 function key for help.
  668.  
  669.        QUIT: Quits SFC and returns to MSDOS.
  670.  
  671.        SET  CURRENT DRIVE: Changes the currently selected drive. The user
  672.        can "log onto" any legal DOS drive ( A, B, etc. ). If  you  change
  673.        diskettes  then you must always select the SET DRIVE option before
  674.        continuing.
  675.  
  676.        SET CURRENT PATH: Changes the currently selected path.  When  this
  677.        option  is selected, a "Enter Path:" prompt is displayed. The user
  678.        then edits the current path which is displayed.
  679.  
  680.        All paths must start with a backslash ( full path name ). When the
  681.        user is satisfied, typing ENTER will save  the  path.  Then  MSDOS
  682.        will  attempt to change the "current" path. If successful, the new
  683.        path will be displayed in the "Status" window.
  684.  
  685.        DIRECTORY: Displays a directory  of  files  requested.  When  this
  686.        option  is selected, a "Enter files" prompt is displayed. The user
  687.        then types the file or files ( using the MSDOS wildcards *  and  ?
  688.        ). Filenames can be edited similarly to paths.
  689.  
  690.        SEND FILE(S): Sends files to the other computer. No special action
  691.        is required on the receiving side except that both sides must have
  692.        previously  selected  CONNECT.  The  user will be prompted for the
  693.        filename  in  the  same  way  as  when  "Directory"  was  selected
  694.        including  the  use of the MSDOS wildcards * and ?. If you specify
  695.        that a directory is to be sent and the DIR option is set to  "On",
  696.        then  all  files in that directory ( including other directories )
  697.        will be sent. In this  way  entire  directory  structures  can  be
  698.        copied. The date and time for normal files ( but not directories )
  699.        will be preserved.
  700.  
  701.        An  indirect  file can also be specified by prefixing the filename
  702.        by the '@' character. An indirect file is a  standard  ASCII  text
  703.        file  containing  the  list of files to be sent. The indirect file
  704.        must have been previously prepared  and  contain  one  filename  (
  705.        wildcards  accepted  ) per line. Indirect files are typically used
  706.        to specify a list of files  that  are  transferred  on  a  regular
  707.        basis.
  708.  
  709.  
  710.  
  711.  
  712.  
  713.  
  714.  
  715.  
  716.  
  717.  
  718.  
  719.  
  720.  
  721.  
  722.                                                                page 11
  723.  
  724.  
  725.  
  726.  
  727.        REMOTE  PRINT:  Sends  the  specified file to the remote ( other )
  728.        computer for printing.  No wildcards are  allowed.   The  printing
  729.        can  be  canceled  at any time by typing any key before the normal
  730.        end of the print job.
  731.  
  732.        TOGGLE FLAGS: Allows the  user  to  toggle  each  of  the  five
  733.        runtime   options   (   ARC, ASK, CHK, DIR, and R/O ). The current
  734.        setting is always displayed in the status area.  For a  definition
  735.        of the runtime options, see section 6.3.
  736.  
  737.        DOS  SHELL:  Loads the DOS shell, allowing the user to execute DOS
  738.        commands. The user must be very careful not to execute any command
  739.        that changes the serial ports or modifies the screen  environment.
  740.        Please  note  that  many application programs do change the screen
  741.        environment. It is safer to stay with the  standard  DOS  commands
  742.        unless  a particular executable has been  previously  tested.  Use
  743.        the MSDOS EXIT command to return to SFC.
  744.  
  745.        When  entering text in response to any of the above commands, type
  746.        ESC to return back to the main menu without selecting. The  editor
  747.        starts  in  "Overstrike"  mode ( each typed character overlays the
  748.        previous character ), but can be switched to "Insert" mode (  each
  749.        typed character is inserted at the cursor, shifting all characters
  750.        to  the  right  over  one  space) by typing the INSERT key ( which
  751.        toggles between Overstrike and  Insert  mode  ).  The  DELETE  key
  752.        deletes the character underneath the cursor. The END key moves the
  753.        cursor  to  the  end  of  the string, while the HOME key moves the
  754.        cursor to the start of the string.
  755.  
  756.        6.5 Terminating SFC
  757.  
  758.        A series of files being transmitted can be  terminated  (  without
  759.        aborting  the system ) by typing ESC during transmission. The user
  760.        will be returned to the SFC  menu  after  the  completion  of  the
  761.        current file transmission.
  762.  
  763.        The  user  may break out of SFC at any time and return to MSDOS by
  764.        typing "CTRL" and "BREAK"  simultaneously.  This  should  only  be
  765.        used  when  the  program  hangs  for  some reason and SFC does not
  766.        respond to the keyboard. Always try to use the menu selection QUIT
  767.        to quit SFC and return to MSDOS rather than Control Break.
  768.  
  769.        6.6 CRC Calculations
  770.  
  771.        A  full  16  bit Cyclic Redundancy Check ( CRC ) using the CCITT (
  772.        The  Consultative  Committee  in  International   Telegraphy   and
  773.        Telephony  )  polynomial  is  used by SFC. The CRC of each file is
  774.        computed before transmission by the sender and sent along with the
  775.        file being transmitted. The receiver then computes the CRC of  the
  776.        received  file and compares it to the CRC sent. If the CRCs match,
  777.        then the file is considered to be correct and a "OK" is displayed.
  778.        CRC calculations are considered to be the  best  available  method
  779.        for  verifing  data integrity. They are much superior to checksums
  780.        and detect 99.99 percent of data errors. If an error is  detected,
  781.        the  offending  packet ( part of the file ) will be re-transmitted
  782.  
  783.  
  784.  
  785.  
  786.  
  787.  
  788.                                                                page 12
  789.  
  790.  
  791.  
  792.  
  793.        7.0 Support Programs
  794.  
  795.        The following support programs are not necessary in order  to  run
  796.        SFC but are provided as a "Thank You" for registered users.
  797.  
  798.        7.1 CLONE, PUTSFC, and PUTSFC.
  799.  
  800.        Don't have  SFC  on  the  target  computer  ?  The  CLONE  program
  801.        provides  a  way to 'clone' SFC onto another computer. The program
  802.        PUTSFC is used to send a copy of SFC to GETSFC which is created by
  803.        CLONE on the target computer. With CLONE you only need  your  null
  804.        modem  cable to connect to computers with a different disk format.
  805.        Cloning is fully described in CLONE.DOC.
  806.  
  807.        7.2 LOOPBACK
  808.  
  809.        If you suspect that your serial port may be  defective,  then  use
  810.        LOOPBACK  to  test the internal circuitry. The serial ports have a
  811.        built in 'loop back' test capability which is used by the LOOPBACK
  812.        program. For example, to test the COM1 port, type 'LOOPBACK 1'
  813.  
  814.        7.3 TERM
  815.  
  816.        Need a simple communications program to test your null modem cable
  817.        ?   TERM  is a terminal emulator program in which everything typed
  818.        on one machine is displayed on the other, and vice versa.  Connect
  819.        your  two  computers together with a null modem cable and then run
  820.        TERM on each side. Usage is "TERM port baud" where port =  1,2,3,4
  821.        and  baud = 300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600,
  822.        115200. For example, type "TERM 1 1200" for COM1 at 1200 baud.
  823.  
  824.        7.4 MODEM
  825.  
  826.        The MODEM program is used to turn the modem control lines DTR  and
  827.        RTS  on  and off, and to display DTR, DSR, RTS, and CTS. MODEM can
  828.        help you test out your null modem cable. For example, to work with
  829.        COM3, type 'MODEM 3'. A  menu  will  be  displayed  providing  all
  830.        options.
  831.  
  832.        7.5 PORTEXAM
  833.  
  834.        The  PORTEXAM  program  will  tell you all you ever wanted to know
  835.        about the status of any serial port. It reports  the  serial  port
  836.        address,  the  interrupt vector, the location of the ISR code, the
  837.        status of all modem control and modem status  lines,  and  if  the
  838.        serial  interrupt  is  enabled.   Very  useful  as a cable testing
  839.        program and for advanced users. For example, to examine COM1  type
  840.        'PORTEXAM  1'.  PORTEXAM  does  not  reset  the  port  so that the
  841.        "current" status of the port can be examined.
  842.  
  843.        7.6 CHECKCRC
  844.  
  845.        The  CHECKCRC  program  is  used  to compute the Cyclic Redundancy
  846.        Check ( CRC ) of any file ( sort of a 16-bit file 'fingerprint' ).
  847.        For example, to compute the CRC  of  all  files  ending  with  the
  848.        extension  .DOC type 'CHECKCRC *.DOC'. Use the CHECKCRC program to
  849.        verify that two copies of the same file are indeed the same file.
  850.  
  851.  
  852.  
  853.  
  854.                                                                page 13
  855.  
  856.  
  857.  
  858.  
  859.        7.7 CRYPT
  860.  
  861.        Need to protect your data ? The CRYPT program is used  to  encrypt
  862.        and decrypt any file. To use, type 'CRYPT filename1 filename2 key'
  863.        and  the  file 'filename1' will be encryted to produce 'filename2'
  864.        using the numeric key 'key'. If 'key' is not  specified  then  you
  865.        will be prompted for it. The same key performs both encryption and
  866.        decryption. For example 'CRYPT MYFILE.C MYFILE.X 123' will encrypt
  867.        MYFILE.C using the key 123 and create file 'MYFILE.X'. To decrypt,
  868.        repeat  the  process  using the same key: 'CRYPT MYFILE.X MYFILE.C
  869.        123'.
  870.  
  871.        7.8 SPACE
  872.  
  873.        Need a quick and easy way to determine how much free disk space is
  874.        available ? Use the SPACE program to display  the  remaining  free
  875.        disk  space and the allocation unit size of the specfied disk. For
  876.        example, type 'SPACE C' to display free space on drive C.
  877.  
  878.        7.9 SETCOM3 and SETCOM4
  879.  
  880.        Got COM3 and/or COM4 serial port hardware but SFC and other serial
  881.        programs  don't  know its there ? The BIOS table is not updated by
  882.        MSDOS as is the case for COM1 and COM2. SETCOM3 updates  the  BIOS
  883.        table  for  COM3 if you have serial port hardware installed at the
  884.        standard COM3 address 03E8.  Similiarly, use SETCOM4 if  you  have
  885.        serial  port hardware installed at the standard COM4 address 02E8.
  886.        Place SETCOM3 and/or SETCOM4 in your AUTOEXEC.BAT file so that the
  887.        BIOS table can be updated automatically at bootup.
  888.  
  889.        7.10  FLAGS
  890.  
  891.        Need an easy way to examine, set,  and  clear  the  ARCHIVE,  READ
  892.        ONLY,  and  HIDDEN  attributes  of  your files?  Later versions of
  893.        MSDOS provide the ATTRIB utility, which does the same thing except
  894.        for hidden files. But if you don't have ATTRIB or want  to  change
  895.        the  HIDDEN  attribute,  use  FLAGS. For example, "FLAGS +H *.SAV"
  896.        sets the hidden attribute of all files ending  in  "SAV",  whereas
  897.        "FLAGS  -H  *.SAV"  clears  the  hidden attribute.  Use R for READ
  898.        ONLY, H for HIDDEN, and A for ARCHIVE attributes.
  899.  
  900.  
  901.  
  902.  
  903.  
  904.  
  905.  
  906.  
  907.  
  908.  
  909.  
  910.  
  911.  
  912.  
  913.  
  914.  
  915.  
  916.  
  917.  
  918.  
  919.  
  920.                                                                page 14
  921.  
  922.  
  923.  
  924.  
  925.        8.0 Performance
  926.  
  927.        The following benchmark results were obtained using a  Tandy  1000
  928.        (  4.77 MHZ), a Tandy 1400LT ( 4.77 & 9.16 MHZ ), and a Tandy 3000
  929.        ( 10 MHZ ) computer. Note that the 'standard' IBM PC runs at  4.77
  930.        MHZ.  Virtual  disks  (  ramdisks  ) were used in order to measure
  931.        performance as independent of disk speed as possible. The  use  of
  932.        hard  disks  will result in a little slower times than shown while
  933.        the use of floppy disks will result in slower times still. The use
  934.        of faster computers will result in faster times than shown.  Three
  935.        files  were  used:  file  A is 10,000 bytes long, file B is 50,000
  936.        bytes and file C is 100,000 bytes long. All times are  in  seconds
  937.        and  are  from  start  to  finish  including  ramdisk access. Your
  938.        results should be very similiar.
  939.  
  940.        8.1 Test 1 ( 10 MHZ Tandy 3000 to 4.77 MHZ Tandy 1000 )
  941.  
  942.            baud rate   File A   File B   File C
  943.            ---------   ------   ------   ------
  944.              38400       4.0     16.5     32.3
  945.             115200       2.2      9.8     14.7
  946.  
  947.        8.2 Test 2 ( 10 MHZ Tandy 3000 to 4.77 MHZ Tandy 1400LT )
  948.  
  949.            baud rate   File A   File B   File C
  950.            ---------   ------   ------   ------
  951.              38400       3.3     15.3     30.3
  952.             115200       1.6      6.7     12.7
  953.  
  954.        8.3 Test 3 ( 9.16 MHZ Tandy 1400LT to 10 MHZ Tandy 3000 )
  955.  
  956.            baud rate   File A   File B   File C
  957.            ---------   ------   ------   ------
  958.             115200       1.5      6.1     12.1
  959.  
  960.        8.4 Other Tests
  961.  
  962.        Serial File  Copy  has  been  benchmarked  against  several  other
  963.        shareware  programs.  All that we have tried ( 3 ) are slower when
  964.        using the same baud rate. One program took almost twice as long to
  965.        transfer files. If anyone finds a  faster  file  transfer  utility
  966.        than SFC please write or call!
  967.  
  968.  
  969.  
  970.  
  971.  
  972.  
  973.  
  974.  
  975.  
  976.  
  977.  
  978.  
  979.  
  980.  
  981.  
  982.  
  983.  
  984.  
  985.  
  986.                                                                page 15
  987.  
  988.  
  989.  
  990.  
  991.        9.0 Using SFC to back up HARD DISKS
  992.  
  993.        SFC is an easy way to back up one  hard  disk  onto  another  hard
  994.        disk.   Of  course,  there    must   be  sufficient  room  on  the
  995.        receiving disk.
  996.  
  997.        Normally,  you  only  need  to  back  up your work files that have
  998.        changed  since your last backup. You should have  the  masters  of
  999.        any application programs backed up to disk separately.
  1000.  
  1001.        To   begin,   it  is  usually  a good idea to mark your system and
  1002.        application  files  as  "READ  ONLY"  (R/O) using the MSDOS ATTRIB
  1003.        command. Registered users can  use  the  FLAGS  utility  for  this
  1004.        purpose  if  ATTRIB  is  not available. Unless the SFC R/O flag is
  1005.        set, these files will always be skipped by SFC. By the way, making
  1006.        your files "read only" affords you some degree of  computer  virus
  1007.        protection.
  1008.  
  1009.        The CHK flag can be used which  will  only  allow  copying a  file
  1010.        with  a  more  recent time and date on the source computer than on
  1011.        the destination computer. If you use this method, be sure that the
  1012.        clocks  on  your two computers are reasonably close - within a few
  1013.        seconds if you will be backing up  immediately  after  updating  a
  1014.        file.
  1015.  
  1016.        Alternately, the SFC ARC flag can be set  which  will  only  allow
  1017.        copying  a  file  that  has not been written to since the last SFC
  1018.        copy. SFC does this by only  coping  files  with  the  MSDOS  file
  1019.        ARCHIVE  attribute  set,  then  clearing  this attribute. However,
  1020.        please note  that  MSDOS  commands  like  BACKUP  also  clear  the
  1021.        ARCHIVE  attribute. This means that if  you  use  BACKUP  or  some
  1022.        commercial  backup program to make backups, don't use the ARC flag
  1023.        with SFC unless you know what you are doing.
  1024.  
  1025.        For  example,  in order to backup all files ending in  .WK1, .WK2,
  1026.        .WK3, etc. anywhere on your harddisk, we do the following:
  1027.  
  1028.        1) After connecting your two computers, start SFC and  select  the
  1029.        proper  drive  and path on both computers. To back up  the  entire
  1030.        disk, select the root path.
  1031.  
  1032.        2) Set the DIR flag to Y using the "Toggle Flags" menu item.
  1033.  
  1034.        3) Select "Send File(s)" and type "*.WK?".
  1035.  
  1036.  
  1037.  
  1038.  
  1039.  
  1040.  
  1041.  
  1042.  
  1043.  
  1044.  
  1045.  
  1046.  
  1047.  
  1048.  
  1049.  
  1050.  
  1051.  
  1052.                                                                page 16
  1053.  
  1054.  
  1055.  
  1056.  
  1057.        10.0 User Registration
  1058.  
  1059.        The  shareware  version  of  SFC  is  provided  so  that  you  may
  1060.        personally  determine  the  usefulness of SFC for yourself. If you
  1061.        can use SFC please register your use with us.
  1062.  
  1063.        MarshallSoft
  1064.        P.O. Box 4543
  1065.        Huntsville, AL.
  1066.        35815-4543
  1067.  
  1068.  
  1069.        Please pay by  check.  Payment  must  accompany  purchase  orders.
  1070.        Print  the  file SFC.INV if an invoice is needed. Two packages are
  1071.        available. The "Personal Package" is available  for  $15  postpaid
  1072.        and includes:
  1073.  
  1074.        o High Speed Version - 115200 baud.
  1075.        o No shareware screens.
  1076.        o All  12+ support  programs  -  See 'Support Programs' section.
  1077.        o Notices of new versions.
  1078.  
  1079.        The  "Business Package" is available for $25 postpaid and includes
  1080.        all of the Personal Package plus:
  1081.  
  1082.        o Telephone support ( voice ).
  1083.        o At least 1/2 off all future releases of SFC.
  1084.        o Backbone bound printed Users Manual.
  1085.  
  1086.        The registered user will receive  the  latest  version  by  return
  1087.        mail.  Both a 720 KB 3.5" and a 360KB 5.25" diskette are provided.
  1088.  
  1089.        The  latest  shareware version is always available for $7.50. Both
  1090.        5.25"  and  3.5"  disks  are provided. You will also be put on the
  1091.        mailing list for notices of new versions.
  1092.  
  1093.        11.0 Other MarshallSoft Products
  1094.  
  1095.        The   C  Language  Communications Library ( CCL ) is an asynchronous
  1096.        communications library designed for software developers  working  in
  1097.        Microsoft  C  or Turbo C. MSDOS and an IBM PC/XT/AT or compatible is
  1098.        required.
  1099.  
  1100.        The  CCL features: 16 communications functions + 6 support functions
  1101.        o Receiver is interrupt driven o Runs from 300 baud to 115,200  baud
  1102.        o  Supports  COM1,  COM2, COM3, and COM4 o Adjustable receive queues
  1103.        from 8 bytes to 16 KB o Control-BREAK error exit  o  11  comm  error
  1104.        conditions  trapped o Supports all memory models o Allows 2 ports to
  1105.        run concurrently o Complete modem control & status.
  1106.  
  1107.        Registration for CCL is  $35  which  includes  source  code  to  the
  1108.        library,  several  C  language  programs,  and  one  year  telephone
  1109.  
  1110.  
  1111.  
  1112.  
  1113.  
  1114.  
  1115.  
  1116.  
  1117.  
  1118.                                                                page 17
  1119.  
  1120.  
  1121.  
  1122.  
  1123.        12.0 Revision History
  1124.  
  1125.        Version 1.0 -- 10 April 1989 -- Original release
  1126.  
  1127.        Version 1.1 -- 30 July 1989
  1128.  
  1129.        Added ASK and CHK options.
  1130.        Moved DIR option from separate menu item to options menu.
  1131.        Fixed bug in disk file size reporting.
  1132.        Changed units of FREE from kilobytes to bytes.
  1133.        Changed internal parameters for  easier  synchronization.
  1134.        Increased  PATH length from 58 to a full 64 characters.
  1135.        SLAVE side must start SFC with "SFC  /S".
  1136.        Could not generate backslash on Tandy 1000.
  1137.  
  1138.        Version 1.2  --  16 October 1989 ( no shareware version )
  1139.  
  1140.        Added a new AUTOSYNC mode as well as manual startup mode.
  1141.        Added help file support.
  1142.        Greatly expanded documention file.
  1143.  
  1144.        Version 1.3  -- 1 November 1989 ( no shareware version )
  1145.  
  1146.        Fixed problem with port COM2.
  1147.        Support the port and baud rate specified on command line.
  1148.        Simplified operation of AUTOSYNC.
  1149.        Added indirect file ( '@' file ) support.
  1150.        Added support for COM3 and COM4.
  1151.  
  1152.        Version 2.0  -- 10 November 1989
  1153.  
  1154.        Internal change to allow 4.77 MHZ PCs to run at 115200.
  1155.        Allows transfer of read only files.
  1156.  
  1157.        Version 2.1 -- 16 February 1990
  1158.  
  1159.        Added DOS Shell menu option.
  1160.        Modified AUTOSYNC for increased reliability.
  1161.        Increased buffer size to 2000 bytes for 57600 & 115200 baud.
  1162.        Provide cloning program and other supporting programs.
  1163.        Added ability to do remote printing.
  1164.        'NO RESPONSE' error does not abort system.
  1165.        Fixed error in sending files > 50KB ( affected version 2.0 only )
  1166.  
  1167.        Version 2.2 -- 15 May 1990 ( no shareware version )
  1168.  
  1169.        Changing drives clears file message string back to "*.*".
  1170.        Minor changes and bug fixes.
  1171.  
  1172.        Version 3.0 -- 11 Aug 1990
  1173.  
  1174.        Supports both B&W and color displays.
  1175.        Supports configuration file (SFC.CFG)
  1176.        Added ARCHIVE flag to options.
  1177.        Added R/O flag to options.
  1178.        The  file  spec. applies  to all subdirectories if DIR is set.
  1179.  
  1180.  
  1181.  
  1182.  
  1183.  
  1184.                                                                page 18
  1185.  
  1186.  
  1187.  
  1188.  
  1189.        13.0 Warranty
  1190.  
  1191.        The  user  of  this software assumes all liability for its use. In
  1192.        no case shall MarshallSoft be liable for  any  damages,  including
  1193.        any  incidental  or  consequential  damages. The prudent user will
  1194.        keep multiple backups of all important programs and data.
  1195.  
  1196.        14.0 Final Comments
  1197.  
  1198.        An update to SFC is planned  about  twice  a  year  for  the  next
  1199.        several  years.  It  is  amazing that as one gets into programming
  1200.        something like SFC new  ideas  are  constantly  occurring.  Future
  1201.        upgrades  will  add new features, make SFC easier to use, make SFC
  1202.        faster, add new supporting programs, or enhance the documentation.
  1203.  
  1204.        If you find any errors or have  any  suggestions  for  improvement
  1205.        please  write  or  call  (205)  881-4630  after 5:00 PM CST Monday
  1206.        through Friday or after 2:00 PM Saturday.
  1207.  
  1208.        Thanks for trying SERIAL FILE COPY -- Mike Marshall ( Author ).
  1209.